89 research outputs found
User Interfaces for Theorem Provers: Necessary Nuisance or Unexplored Potential?
This note considers the design of user interfaces for interactive theorem provers. The basic rules of interface design are reviewed, and their applicability to theorem provers is discussed, leading to considerations about the particular challenges of interface design for theorem provers. A short overview and classification of existing interfaces is given, followed by suggestions of possible future work in the area
Categorical Term Rewriting: Monads and Modularity
Laboratory for Foundations of Computer ScienceTerm rewriting systems are widely used throughout computer science as they provide an abstract model of computation while retaining a comparatively simple syntax and semantics. In order to reason within large term rewriting systems, structuring operations are used to build large term rewriting systems from smaller ones. Of particular interest is whether key properties are modular, that is, if the components of a structured term rewriting system satisfy a property, then does the term rewriting system as a whole? A body of literature addresses this problem, but most of the results and proofs depend on strong syntactic conditions and do not easily generalize. Although many specific modularity results are known, a coherent framework which explains the underlying principles behind these results is lacking.
This thesis posits that part of the problem is the usual, concrete and syntax-oriented semantics of term rewriting systems, and that a semantics is needed which on the one hand elides unnecessary syntactic details but on the other hand still possesses enough expressive power to model the key concepts arising from the term structure, such as substitutions, layers, redexes etc. Drawing on the concepts of category theory, such a semantics is proposed, based on the concept of a monad, generalising the very elegant treatment of equational presentations in category theory. The theoretical basis of this work is the theory of enriched monads.
It is shown how structuring operations are modelled on the level of monads, and that the semantics is compositional (it preserves the structuring operations). Modularity results can now be obtained directly at the level of combining monads without recourse to the syntax at all. As an application and demonstration of the usefulness of this approach, two modularity results for the disjoint union of two term rewriting systems are proven, the modularity of confluence (Toyama's theorem) and the modularity of strong normalization for a particular class of term rewriting systems (non-collapsing term rewriting systems). The proofs in the categorical setting provide a mild generalisation of these results
Proof General meets IsaWin: Combining Text-Based And Graphical User Interfaces
We describe the design and prototype implementation of a combination of theorem prover interface technologies. On one side, we take from Proof General the idea of a prover-independent interaction language and its proposed implementation within the PG Kit middleware architecture. On the other side, we take from IsaWin a sophisticated graphical metaphor using direct manipulation for developing proofs. We believe that the resulting system will provide a powerful, robust and generic environment for developing proofs within interactive proof assistants that also opens the way for studying and implementing new mechanisms for managing interactive proof development.
Analytic Estimation of Region of Attraction of an LQR Controller for Torque Limited Simple Pendulum
Linear-quadratic regulators (LQR) are a well known and widely used tool in
control theory for both linear and nonlinear dynamics. For nonlinear problems,
an LQR-based controller is usually only locally viable, thus, raising the
problem of estimating the region of attraction (ROA). The need for good ROA
estimations becomes especially pressing for underactuated systems, as a failure
of controls might lead to unsafe and unrecoverable system states. Known
approaches based on optimization or sampling, while working well, might be too
slow in time critical applications and are hard to verify formally. In this
work, we propose a novel approach to estimate the ROA based on the analytic
solutions to linear ODEs for the torque limited simple pendulum. In simulation
and physical experiments, we compared our approach to a Lyapunov-sampling
baseline approach and found that our approach was faster to compute, while
yielding ROA estimations of similar phase space area.Comment: 7 pages, 5 figures, 2 tables, to be published in proceedings of 61st
IEEE Conference on Decision and Control (CDC
Proof General / Eclipse: A generic interface for interactive proof
Abstract. This paper introduces PG/Eclipse; a sophisticated new interface for interactive theorem provers, offering users a rich set of proof development tools. It is based upon two complementary frameworks. The first is PG/Kit, a generic communication framework for connecting theorem provers and interfaces. PG/Kit should allow straightforward adaptation to most interactive theorem provers. Moreover, by separating interface development from proof engine development, this framework should facilitate the development of both. The second is Eclipse, a sophisticated open source framework for building IDEs. Eclipse is highly modular and extensible, making it a good platform for interface research. Using it has allowed us to provide a rich range of interface features. These frameworks correspond to the twin goals of this project: to define a clear separation between provers and interfaces, and to translate programming development tools to a theorem proving environment
Automated Generation of User Guidance by Combining Computation and Deduction
Herewith, a fairly old concept is published for the first time and named
"Lucas Interpretation". This has been implemented in a prototype, which has
been proved useful in educational practice and has gained academic relevance
with an emerging generation of educational mathematics assistants (EMA) based
on Computer Theorem Proving (CTP).
Automated Theorem Proving (ATP), i.e. deduction, is the most reliable
technology used to check user input. However ATP is inherently weak in
automatically generating solutions for arbitrary problems in applied
mathematics. This weakness is crucial for EMAs: when ATP checks user input as
incorrect and the learner gets stuck then the system should be able to suggest
possible next steps.
The key idea of Lucas Interpretation is to compute the steps of a calculation
following a program written in a novel CTP-based programming language, i.e.
computation provides the next steps. User guidance is generated by combining
deduction and computation: the latter is performed by a specific language
interpreter, which works like a debugger and hands over control to the learner
at breakpoints, i.e. tactics generating the steps of calculation. The
interpreter also builds up logical contexts providing ATP with the data
required for checking user input, thus combining computation and deduction.
The paper describes the concepts underlying Lucas Interpretation so that open
questions can adequately be addressed, and prerequisites for further work are
provided.Comment: In Proceedings THedu'11, arXiv:1202.453
Towards Merging PlatΩ and PGIP
AbstractThe PGIP protocol is a standard, abstract interface protocol to connect theorem provers with user interfaces. Interaction in PGIP is based on ASCII-text input and a single focus point-of-control, which indicates a linear position in the input that has been checked thus far. This fits many interactive theorem provers whose interaction model stems from command-line interpreters. PlatΩ, on the other hand, is a system with a new protocol tailored to transparently integrate theorem provers into text editors like that support semi-structured XML input files and multiple foci of attention. In this paper we extend the PGIP protocol and middleware broker to support the functionalities provided by PlatΩ and beyond. More specifically, we extend PGIP (i) to support multiple foci in provers; (ii) to display semi-structured documents; (iii) to combine prover updates with user edits; (iv) to support context-sensitive service menus, and (v) to allow multiple displays. As well as supporting , the extended PGIP protocol in principle can support other editors such as OpenOffice, Word 2007 and graph viewers; we hope it will also provide guidance for extending provers to handle multiple foci
- …